Method and apparatus providing a protocol to enable a wireless TCP session using a split TCP connection

ABSTRACT

Disclosed are a method and a system that operates in accordance with the method to set up a TCP session between a MS and an end point destination via a wireless network and the Internet. The method includes sending a split TCP connection request from the MS to a PEP located in the network, where the split TCP request includes information for identifying a network address of the MS and a network address of the end point destination. The method further includes, in response to receiving the split TCP connection request from the MS, establishing a split TCP connection that includes a wireless TCP (WTCP) connection between the MS and the PEP, and a TCP connection at least part way between the PEP and the end point destination. In one embodiment the end point destination is an application server that is coupled to the Internet, and the TCP connection is established between the PEP and the application server. In another embodiment the end point destination is a second MS that is coupled to a second PEP in a second wireless network, and the TCP connection is established at least as far as the second PEP, and then as a WTCP connection from the second PEP to the second MS.

TECHNICAL FIELD

This invention relates generally to mobile Internet devices, proceduresand protocols, and more specifically relates to the set up of wirelessTransport Control Protocol (TCP) sessions.

BACKGROUND

There currently exists the concept of a TCP connection that is set upover a wireless link, such as in a cellular network. Wireless TCP (WTCP)is a TCP protocol that is optimized for use in wireless environments.Wireless links are prone to long latencies and high error rates. Thesefactors can make the conventional TCP perform poorly in the wirelesslink environment, as the end-to-end TCP dynamics is usually not fastenough to track the variations in the wireless link quality and thus thewireless link, which usually is the bottleneck in the end-to-end path,is not optimally used. In an attempt to overcome these problems theInternet Engineering Task Force (IETF,http://ietf.org/html.charters/pilc-charter.html), as well as the OpenMobile Alliance (OMA,http://www.openmobilealliance.org/tech/affiliates/wap/wap-225-tcp-20010331-a.pdf)have recommended a number of enhancements to conventional TCP to make itmore efficient over wireless links.

One proposed enhancement recommends splitting the end-to-end TCPconnection at certain intermediate network entities. For example, andreferring to FIG. 1, if a mobile station (MS) 1 is to set up a TCPconnection with application web server 2 in the wired Internet 4, it isrecommended that one TCP connection be set up over a wireless accessnetwork 5 between the MS 1 and an intermediate network entity, sometimesreferred to as a performance enhancing proxy (PEP) 3, while another TCPconnection is set up between the PEP 3 and the web server 2. Thisenables the connection between the MS 1 and the intermediate networkentity (the PEP 3) to run a version of TCP that is optimized forwireless links (also referred to as wireless profiled TCP), while theother connection runs the conventional (wireline) TCP. The intermediatenetwork entity or PEP 3 can reside on a WAP proxy or on a gatewaybetween the wireless access network 5 and the Internet 4.

As may be appreciated, an appropriate signaling mechanism is required toset up a split TCP connection in a cellular communications network, suchas in the CDMA network architecture or in the GPRS/UMTS networkarchitecture. Further, in the case of a mobile-to-mobile session, thePEPs 3 at each of two ends may need to communicate so that anappropriate split TCP connection can be set up.

However, while it is known in the prior art (e.g., IETF's PerformanceImplication of Link Characteristics (PILC) working group and the WAP 2.0protocol) to recommend the use of the split TCP connection forperformance enhancement, no mechanisms are available or have beenproposed, to the knowledge of the inventors, to actually set up suchsplit TCP connections in a cellular environment. Note in this regardthat if the PEP 3 is to reside on a priori known network elements, suchas on a WAP Proxy, then no specific mechanism is needed other than tohave address of the WAP Proxy configured in the mobile station or othertype of terminal. However, if the PEP 3 is to be hosted on a networkelement such as the GGSN/PDSN, these elements are not a priori known tothe mobile station, as the specific GGSN/PDSN that the terminal connectsto depends on the location of the mobile station.

SUMMARY OF THE PREFERRED EMBODIMENTS

The foregoing and other problems are overcome, and other advantages arerealized, in accordance with the presently preferred embodiments ofthese teachings.

This invention provides a mechanism to set up a split TCP connection ina cellular network, and involves identifying the PEP and informing thePEP about the required connection parameters, such as the IP address andTCP port number of the remote end of the connection. The PEP, inresponse, sends certain parameters to the MS so that a split TCPconnection can be set up.

Disclosed herein is a method, and a system that operates in accordancewith the method, to set up a TCP session between a mobile terminal (MT)or mobile station (MS) and an end point destination via a wirelessnetwork and the Internet. The method includes sending a split TCPrequest from the MS to a PEP located in the wireless network, where thesplit TCP request includes information for identifying a network addressof the MS and a network address of the end point destination. The methodfurther includes, in response to receiving the split TCP request fromthe MS, establishing a split TCP connection that includes a wireless TCP(WTCP) connection between the MS and the PEP, and a TCP connection atleast part way between the PEP and the end point destination. In oneembodiment the end point destination is an application server that iscoupled to the Internet, and the TCP connection is established betweenthe PEP and the application server. In another embodiment the end pointdestination is a second MS that is coupled to a second PEP in a secondwireless network, and the TCP connection is established at least as faras the second PEP, and then as a WTCP connection from the second PEP tothe second MS.

In another embodiment the MS_A and the MS_B are served by the same PEPusing two different WTCP connections.

In one exemplary embodiment the wireless network is a CDMA network, andthe PEP is embodied in or is co-located with a Packet Data Support Node(PDSN) in the CDMA network. In another exemplary embodiment the wirelessnetwork is a General Packet Radio Service (GPRS) or Universal MobileTelecommunications System (UMTS) network, and the PEP is embodied in oris co-located with a Gateway GPRS Support Node (GGSN) in the GPRS orUMTS network.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other aspects of these teachings are made more evidentin the following Detailed Description of the Preferred Embodiments, whenread in conjunction with the attached Drawing Figures, wherein:

FIG. 1 is a diagram that illustrates a split TCP connection as proposedin the prior art;

FIG. 2 shows an embodiment where a PEP is located with a PDSN in a CDMAcellular architecture, and is useful in describing a MS-web server WTCPembodiment;

FIG. 3A shows an embodiment where a PEP is located with a GGSN in aGPRS/UMTS cellular architecture, and is also useful in describing theMS-web server WTCP embodiment;

FIG. 3B shows an embodiment where a first PEP is located with a firstGGSN in a first GPRS/UMTS cellular architecture and where a second PEPis located with a second GGSN in a second GPRS/UMTS cellulararchitecture, and is useful in describing a MS-MS WTCP embodiment;

FIG. 3C shows an embodiment where a single PEP is located with the GGSNin the GPRS/UMTS cellular architecture, and is useful in describing aMS-MS WTCP embodiment;

FIG. 4 is a logic flow diagram that illustrates a method foraccommodating the MS-web server embodiment of FIG. 3A;

FIG. 5 is a logic flow diagram that illustrates a method foraccommodating the MS-MS multi-PEP embodiment of FIG. 3B; and

FIG. 6 is a logic flow diagram that illustrates a method foraccommodating the MS-MS single PEP embodiment of FIG. 3C.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Described herein are several embodiments of split TCP connections forthe case of the MS-server connection and for the case of the MS-MSconnection. The case of the MS-MS connection is based on, and extends,the solution for the MS-server connection case. The general messagingand message flow is described in the context of embodiments for CDMA andGPRS/UMTS architectures. For the case of the MS-server connection theterm “server” in a generic fashion, and as used herein implies that thisend point of the connection is a node that does not require wireless TCP(WTCP) service.

In embodiments of this invention the end point of the connection may notbe the web server 2 that is connected to the conventional wired Internet4, but it may be another MS, thereby requiring a MS-to-MS connection tobe established as described below in relation to FIG. 3B. Of course, thesecond MS may be functioning as a web server, just not one that isconnected the wired Internet.

Case (i): MS-Web Server Connection

Assume that the MS 1 wishes to initiate a wireless TCP connection withthe web server 2. The following conventions can be used in thedescription of this case:

-   x1,y1: IP address and port number at the MS 1-   x2,y2: IP address and port number at the PEP 3 that the MS 1    communicates with-   x3,y3: IP address and port number at PEP 3 that the server 2    communicates with-   x4,y4: IP address and port number at the server 2 that the PEP 3    communicates with

Referring also to FIG. 4, this embodiment of the invention performs thefollowing procedure:

4A. The MS 1 sends a message to the PEP 3 specifying the need for splitTCP connection. This split TCP connection request message includes, oris sent in conjunction with, information that is descriptive of (x4,y4)and (x1,y1). Note that the (x1,y1) information may be implicit in thesplit TCP connection request message as it is the address and port ofthe origin of the message (i.e., the address and port of the MS 1).

4B. The PEP 3 selects (x2,y2) and (x3,y3) to be used in the split TCPconnection. This may be accomplished by a table lookup procedure.

4C. The MS 1 and the PEP 3 establish a WTCP connection between (x1,y1)and (x2,y2). For this purpose the PEP 3 may first send a message to theMS 1 informing the MS of (x2,y2), and the MS 1 may then initiate the TCPconnection setup (for example, by the use of a conventional SYN, SYN ACKand ACK transaction). In an alternate embodiment, the PEP 3 may initiatethe TCP connection setup with the MS 1.

4D. The PEP 3 and the server 2 set up a TCP connection between (x3,y3)and (x4,y4) (for example, by using the conventional SYN, SYN ACK and ACKhandshake used to establish TCP connections).

Embodiment for CDMA2000 Architecture:

Referring to FIG. 2, the PEP 3 may reside on or be co-located with aPacket Data Support Node (PDSN) 6 in the CDMA network architecturedefined by 3GPP2. The PEP 3 may be implemented as a software module thatis executed by a data processor of the PDSN 6, or by another dataprocessor in the CDMA network architecture. The PEP/PDSN 6 is reachedfrom the wireless link 5 via a radio network (RN) element 7 and anA10/A11 interface 8.

For accessing the Internet 4 over the CDMA network, the MS 1 firstestablishes a conventional Point-to-Point Protocol (PPP) connection withthe PDSN 6. If using simple IP, the MS 1 obtains its IP address duringthe PPP connection establishment. For mobile IP, the PDSN 6 and the MS 1perform agent advertisement/solicitation signaling for the IP addressassignment. The established PPP connection can then be used to carry outStep 4A from the MS 1 to the PDSN 6. A Resv message defined in 3GPP2Specification X.P0011.*, Wireless IP Network Standard, February 2003,can be used in a modified form to encode the request to establish thesplit TCP connection and to convey the reverse link (x4,y4) information.The (x2,y2) information in Step 4C can be conveyed from the PDSN 6 tothe MS 1 in a ResvConf message, also defined in 3GPP2 SpecificationX.P0011.*, Wireless IP Network Standard, February 2003, which functionsbasically as an acknowledgment to the Resv message.

Embodiment for GPRS/UMTS Architecture:

Further by example, and referring to FIG. 3A, the PEP 3 can reside (in aGeneral Packet Radio System or GPRS embodiment) on or be co-located witha Gateway GPRS Support Node (GGSN) 13 in the GPRS, or in an UniversalMobile Telecommunications System (UMTS) network architecture, as definedby 3GPP. The PEP 3 may be implemented as a software module that isexecuted by a data processor of the GGSN 13, or by another dataprocessor in the GPRS/UMTS network architecture. In this embodiment thePEP/GGSN 13 is reached from the wireless link 5 via a base stationsystem (BSS) 9 that is connected to a conventional mobile switchingcenter (MSC) 10 and to a serving gateway support node (SGSN) 11 that inturn connects to an Internet Protocol (IP) core network 12 and thence tothe GGSN 13.

When accessing the Internet 4 over the GPRS network, the MS 1 firstestablishes a primary Packet Data Protocol (PDP) context with the GGSN13. The MS 1 obtains its IP address during the PDP context establishmentprocedure, as defined in 3GPP Technical Specification TS 23.060, GeneralPacket Radio Service (GPRS); Service description; Stage 2 (Release1999), Version 3.10.0, January 2002. While setting up the PDP context,the MS 1 also specifies the desired service from the GPRS/UMTS accessnetwork. This can be accomplished by the use of an access point name(APN) field in a PDP Activate message. As in Step 4A for setting up thesplit TCP connection, the MS 1 may initiate the PDP context (primary orsecondary) with the GGSN 13 by providing an APN value that ispredetermined to be indicative of the request for WTCP service. The MS 1preferably also includes the (x4,y4) information along with thismessage. The (x2,y2) information in Step 4C can be conveyed from theGGSN 13 to the MS 1 in an acknowledgment to the PDP Activate message, asdescribed in 3GPP Technical Specification TS 23.060, General PacketRadio Service (GPRS); Service description; Stage 2 (Release 1999),Version 3.10.0, January 2002.

Case (ii): MS-MS Connection

The foregoing discussion of FIGS. 2, 3A and 4 considered the case inwhich the MS 1 establishes a WTCP connection with the server 2. What isnow described is the case, shown for convenience and not by way oflimitation in a GPRS architecture system in FIG. 3B, in which a MS 1,say MS_A, establishes a WTCP connection with another MS 1, say MS_B. Thefollowing naming convention is used during the description of this case:

-   x1,y1: IP address and port number at MS_A-   x2,y2: IP address and port number at PEP (PEP_A) that MS_A    communicates with-   x3,y3: IP address and port number at PEP_A that the PEP for MS_B    (PEP_B) communicates with-   x4,y4: IP address and port number at PEP_B that PEP_A communicates    with-   x5,y5: IP address and port number at PEP_B that MS_B communicates    with-   x6,y6: IP address and port number at MS_B

In this embodiment it may be assumed that both MS_A and MS_B desire tohave a WTCP connection. The associated PEPs 3 are PEP_A and PEP_B,respectively. Referring also to FIG. 5, this embodiment of the inventionperforms the following procedure:

5A. The MS_A sends a message to PEP_A specifying a request for a splitTCP connection to be set up, along with information about MS_B (at least(x6,y6)) and also the IP address and port number at MS_A (x1,y1). The(x1,y1) information may be implicit in the message, as it is the addressand port of the origin of the message.

5B. The PEP_A selects (x2,y2) and (x3,y3) to be used in the split TCPconnection, such as through a table look up procedure.

5C. The MS_A and PEP_A establish a WTCP connection between (x1,y1) and(x2,y2). For this purpose the PEP_A may first send a message to the MS_Ainforming MS_A of (x2,y2), and MS_A may then initiates a WTCP connectionsetup. In an alternate embodiment, PEP_A initiates the WTCP connectionsetup.

5D. PEP_A begins the process of establishing a TCP connection with MS_B.Once MS_B receives a TCP SYN message from PEP_A, it begins the procedureof establishing a WTCP connection with PEP_B.

5E. MS_B sends a message to PEP_B conveying its WTCP set up request,along with the appropriate end-point information, (x3,y3) and (x6,y6).The (x6,y6) information may be implicit in the message, as it is theaddress and port of the origin of the message.

5F. The PEP_B selects (x4,y4) and (x5,y5) to be used in the split TCPconnection, such as through a table look up procedure. The MS_B andPEP_B establish a WTCP connection between (x6,y6) and (x5,y5). For thispurpose the PEP_B may first send a message to the MS_B informing MS_B of(x5,y5), and MS_B may then initiates a WTCP connection setup. In analternate embodiment, PEP_B initiates the WTCP connection setup.

5G. PEP_B, from (x4,y4), also sends a TCP-SYN ACK to PEP_A, at address(x3,y3), and encapsulates MS_B's information (x6,y6) in this TCP-SYN ACKpacket. When PEP_A sees the encapsulated TCP-SYN ACK packet, itunderstands that it is a special case where PEP_B is acting as a proxyfor MS_B for this particular TCP-SYN request.

5H. PEP_A initiates a TCP connection with PEP_B with end-points (x3,y3)and (x4,y4), respectively, using a conventional TCP SYN, SYN ACK and ACKhandshake.

As can be appreciated, after performing steps 5A-5H there are WTCPconnections established between MS_A and PEP_A, and between MS_B andPEP_B, while there is a conventional TCP connection established betweenPEP_A and PEP_B.

The process by which the MSs A and B acquire IP addresses in theCDMA2000 and GPRS/UMTS architectures, in this case, is similar to whatis described in the previous case.

The foregoing description has provided by way of exemplary andnon-limiting examples a full and informative description of the bestmethod and apparatus presently contemplated by the inventors forcarrying out the invention. However, various modifications andadaptations may become apparent to those skilled in the relevant arts inview of the foregoing description, when read in conjunction with theaccompanying drawings and the appended claims. As but some examples, theuse of other similar or equivalent system architectures, message typesand signalling protocols may be attempted by those skilled in the art.

Furthermore, it is possible that MS_A and MS_B may be served from asingle PEP 3, such as when they are two mobile stations connected to thesame network operator. Reference in this regard can be made to FIG. 3Cfor showing the exemplary GPRS embodiment (note that the CDMA embodimentof FIG. 2 can be employed as well, where MS_A and MS_B are both servedfrom the same PEP 3/PDSN 6). In the embodiment of FIG. 3C it is assumedthat both MS_A and MS_B desire to have a WTCP connection. Also in thisembodiment it is assumed that (x3,y3), the IP address and port number atPEP_A that PEP_B communicates with, and (x4,y4), the IP address and portnumber at PEP_B that PEP_A communicates with, are not used. Further, itis assumed that (x5,y5), the IP address and port number at PEP_B thatMS_B communicates with, is modified so as to represent the IP addressand port number at PEP 3 that MS_B communicates with. Alternatively,parameters (x7,y7) could be defined for this purpose, it being realizedthat the embodiments of FIGS. 3B and 3C could very well both be usedtogether (depending on where MS_B happens to be located). Referring toFIG. 6, this embodiment of the invention performs the followingprocedure:

6A. The MS_A sends a message to PEP 3 specifying a request for a splitTCP connection to be set up, along with information about MS_B (at least(x6,y6)) and also the IP address and port number at MS_A (x1,y1). The(x1,y1) information may be implicit in the message, as it is the addressand port of the origin of the message.

6B. The PEP 3 selects (x2,y2) and modified (x5,y5), shown as (x5,y5)_(M)in FIG. 6, or (x7, y7), to be used in the split TCP connection, such asthrough a table look up procedure.

6C. The MS_A and PEP 3 establish a WTCP connection between (x1,y1) and(x2,y2). For this purpose the PEP 3 may first send a message to the MS_Ainforming MS_A of (x2,y2), and MS_A may then initiate a WTCP connectionsetup. In an alternate embodiment the PEP 3 initiates the TCP connectionsetup.

6D. PEP 3 begins the process of establishing a TCP connection with MS_B.Once MS_B receives a TCP SYN message from PEP_A, it begins the procedureof establishing a WTCP connection with PEP 3.

6E. The MS_B and PEP 3 establish a WTCP connection between (x6,y6) andthe modified (x5,y5). For this purpose the PEP 3 may first send amessage to the MS_B informing MS_B of (x5,y5), and MS_B may theninitiate a new TCP connection setup. In an alternate embodiment the PEP3 initiates the TCP connection setup.

As can be appreciated, after performing steps 6A-5E there are two WTCPconnections established, one between MS_A and PEP 3 and one between MS_Band PEP 3. In operation, the PEP 3 operates to copy from port-to-port.

As a further exemplary and non-limiting modification to the foregoingteachings the MS 1 need not send (x4,y4), in the embodiment of FIG. 4,or (x6,y6), in the embodiment of FIGS. 5 and 6, but may instead send aURL (such as http://www.someserver.com orhttp://www.somemobile.someoperator.com), and the corresponding addressinformation can be provided using a conventional domain name server(DNS) procedure. However, all such and similar modifications of theteachings of this invention will still fall within the scope of thisinvention.

Furthermore, some of the features of the present invention could be usedto advantage without the corresponding use of other features. As such,the foregoing description should be considered as merely illustrative ofthe principles of the present invention, and not in limitation thereof.

1. A method to set up a Transport Control Protocol (TCP) connectionbetween a mobile station (MS) and an end point destination via awireless network and the Internet, comprising: sending a split TCPconnection request from the MS to a performance enhancing proxy (PEP)located in the network, the split TCP connection request comprisinginformation for identifying a network address of the MS and a networkaddress of the end point destination; and in response to receiving thesplit TCP connection request from the MS, establishing a split TCPconnection comprised of a wireless TCP (WTCP) connection between the MSand the PEP, and a TCP connection at least part way between the PEP andthe end point destination.
 2. A method as in claim 1, where the endpoint destination comprises an application server that is coupled to theInternet, and where the TCP connection is established between the PEPand the application server.
 3. A method as in claim 1, where the endpoint destination comprises a second MS that is coupled to a second PEPin a second wireless network, and where the TCP connection isestablished at least as far as the second PEP, and then as a WTCPconnection between the second PEP and the second MS.
 4. A method as inclaim 1, where the wireless network comprises a CDMA network, and wherethe PEP is embodied in or co-located with a Packet Data Support Node(PDSN) in the CDMA network.
 5. A method as in claim 4, where sending thesplit TCP connection request from the MS to the PEP uses aPoint-to-Point Protocol (PPP) connection.
 6. A method as in claim 4, andwhere establishing the split TCP connection includes sending a networkaddress of the PEP to the MS for use by the MS in initiating a WTCPconnection set up procedure.
 7. A method as in claim 6, where sendingthe split TCP connection request from the MS to the PEP uses a Resvmessage during a Point-to-Point Protocol (PPP) connection, and where thenetwork address of the PEP is sent to the MS in a ResvConf message.
 8. Amethod as in claim 1, where the wireless network comprises a GeneralPacket Radio Service (GPRS) or Universal Mobile TelecommunicationsSystem (UMTS) network, and where the PEP is embodied in or co-locatedwith a Gateway GPRS Support Node (GGSN) in the GPRS or UMTS network. 9.A method as in claim 8, where sending the split TCP connection requestfrom the MS to the PEP occurs during a Packet Data Protocol (PDP)context establishment procedure.
 10. A method as in claim 8, whereestablishing the split TCP connection includes sending a network addressof the PEP to the MS for use by the MS in initiating a TCP connectionset up procedure.
 11. A method as in claim 10, where sending the splitTCP request from the MS to the PEP occurs during a Packet Data Protocol(PDP) context establishment procedure using an Access Point Name (APN)in a PDP Activate message to specify the split TCP request, and wherethe network address of the PEP is sent to the MS in an acknowledgment tothe PDP Activate message.
 12. A computer program comprised of computerexecutable instructions for operating at least one computer to set up aTransport Control Protocol (TCP) connection between a mobile station(MS) and an application server via a wireless network and the Internet,comprising: first computer executable instructions in said MS forsending a split TCP connection request from the MS to a performanceenhancing proxy (PEP) located in the network; and second computerexecutable instructions in said PEP that are responsive to receiving thesplit TCP connection request from the MS to establish a split TCPconnection comprised of a wireless TCP (WTCP) connection between the MSand the PEP, and a TCP connection between the PEP and the applicationserver.
 13. A computer program as in claim 12, where x1,y1 represents anIP address and port number at the MS; x2,y2 represents an IP address andport number at the PEP; x3,y3 represents an IP address and port numberat the PEP that the application server 2 communicates with; and x4,y4represents an IP address and port number at the server, and whereexecution of the first and second computer instructions causes the MS tosend a split TCP connection request message to the PEP that comprisesinformation that is descriptive of (x4,y4) and (x1,y1); the PEP toselect (x2,y2) and (x3,y3) to be used in the split TCP connection; theMS and the PEP to establish a WTCP connection between (x1,y1) and(x2,y2); and the PEP and the application server to set up a TCPconnection between (x3,y3) and (x4,y4).
 14. A computer program as inclaim 13, where for the MS and the PEP to establish the WTCP connectionthe PEP sends a message to the MS informing the MS of (x2,y2), and inresponse the MS initiates the TCP connection setup.
 15. A computerprogram as in claim 14, where the MS initiates the WTCP connection setupby the use of a SYN, SYN ACK and ACK transaction.
 16. A computer programas in claim 12, where for the MS and the PEP to establish the WTCPconnection the PEP initiates the WTCP connection setup with the MS. 17.A computer program as in claim 16, where the PEP initiates the WTCPconnection setup by the use of a SYN, SYN ACK and ACK transaction.
 18. Acomputer program as in claim 13, where (x1,y1) is sent implicitly fromthe MS to the PEP in the split TCP connection request message.
 19. Acomputer program comprised of computer executable instructions foroperating at least one computer to set up a Transport Control Protocol(TCP) session between a first mobile station (MS_A) and a second MS(MS_B) via a wireless network and the Internet, comprising: firstcomputer executable instructions in MS_A and in MS_B, said firstcomputer instructions for sending a split TCP connection request fromMS_A to a first performance enhancing proxy (PEP_A) located in thewireless network; and second computer executable instructions in PEP_Aand in PEP_B, said second computer instructions responsive to receivingthe split TCP request from MS_A to establish a split TCP connectioncomprised of a first wireless TCP (WTCP) connection between MS_A andPEP_A, a TCP connection between PEP_A and a second PEP (PEP_B), and asecond WTCP connection between PEP_B and MS_B.
 20. A computer program asin claim 19, where x1,y1 represents an IP address and port number atMS_A; x2,y2 represents an IP address and port number PEP_A that MS_Acommunicates with; x3,y3 represents an IP address and port number atPEP_A that PEP_B communicates with; x4,y4 represents an IP address andport number at PEP_B that PEP_A communicates with; x5,y5 represents anIP address and port number at PEP_B that MS_B communicates with; andx6,y6 represents an IP address and port number at MS_B, and whereexecution of the first and second computer instructions causes MS_A tosend a split TCP connection request message to PEP_A that comprisesinformation that is descriptive of (x6,y6) and (x1,y1); PEP_A to select(x2,y2) and (x3,y3) to be used in the split TCP connection; MS_A andPEP_A establish a WTCP connection between (x1,y1) and (x2,y2); PEP_A toinitiate the establishment of a TCP connection with MS_B by sending amessage to MS_B; MS_B to send a WTCP connection request to PEP_B thatcomprises information that is descriptive of (x3,y3) and (x6,y6); PEP_Bto initiate a WTCP connection with MS_B with end-points (x5,y5) and(x6,y6); PEP_B, from address (x4,y4), to send a TCP-SYN ACK packet toPEP_A, at address (x3,y3), that encapsulates at least (x6,y6); and PEP_Ato interpret the encapsulated TCP-SYN ACK packet as a case where PEP_Bis acting as a proxy for MS_B, and to initiate a TCP connection withPEP_B with end-points (x3,y3) and (x4,y4).
 21. A computer program as inclaim 19, where the MS_B is responsive to receiving a TCP SYN messagefrom PEP_A to initiate establishing a WTCP connection with PEP_B bysending the WTCP connection request to PEP_B.
 22. A computer program asin claim 20, where for MS_A and PEP_A to establish the WTCP connectionPEP_A sends a message to MS_A informing MS_A of (x2,y2), and in responsethe MS_A initiates the TCP connection setup.
 23. A computer program asin claim 22, where MS_A initiates the TCP connection setup by the use ofa SYN, SYN ACK and ACK transaction.
 24. A computer program as in claim19, where for MS_A and PEP_A to establish the WTCP connection PEP_Ainitiates the TCP connection setup with MS_A.
 25. A computer program asin claim 24, where PEP_A initiates the TCP connection setup by the useof a SYN, SYN ACK and ACK transaction.
 26. A computer program as inclaim 20, where (x1,y1) is sent implicitly from MS_A to PEP_A in thesplit TCP connection request message.
 27. A computer program as in claim20, where (x6,y6) is sent implicitly from MS_B to PEP_B in the WTCPconnection request.
 28. A computer program comprised of computerexecutable instructions for operating at least one computer to set up aTransport Control Protocol (TCP) session between a first mobile station(MS_A) and a second MS (MS_B) via a wireless network, comprising: firstcomputer executable instructions in at least MS_A, said first computerinstructions for sending a split TCP connection request from MS_A to aperformance enhancing proxy (PEP) located in the wireless network; andsecond computer executable instructions in the PEP that are responsiveto receiving the split TCP request from MS_A to establish a firstwireless TCP (WTCP) connection between MS_A and the PEP, and a secondWTCP connection between the PEP and MS_B.
 29. A mobile terminalcomprising a data processor bidirectionally coupled to an interface to awireless communications network, said data processor operable toinitiate set up of a Transport Control Protocol (TCP) connection betweenthe mobile terminal and an end point destination via the wirelesscommunications network and the Internet, said data processor sending asplit TCP connection request to a performance enhancing proxy (PEP)located in the wireless communications network, the split TCP connectionrequest comprising information for identifying a network address of themobile terminal and a network address of the end point destination; andin response to the PEP receiving the split TCP connection request andestablishing a split TCP connection comprised of a wireless TCP (WTCP)connection between the mobile terminal and the PEP, and a TCP connectionat least part way between the PEP and the end point destination, saiddata processor conducting a TCP session with the end point destination.30. A mobile terminal as in claim 29, where the end point destinationcomprises an application server that is coupled to the Internet, andwhere the TCP connection is established between the PEP and theapplication server.
 31. A mobile terminal as in claim 29, where the endpoint destination comprises a second mobile terminal that is coupled toa second PEP in a second wireless communications network, and where theTCP connection is established at least as far as the second PEP, andthen as a WTCP connection between the second PEP and the second mobileterminal.
 32. A mobile terminal as in claim 29, where the wirelesscommunications network comprises a cellular network.